home *** CD-ROM | disk | FTP | other *** search
/ Ham Radio 2000 / Ham Radio 2000.iso / ham2000 / satellit / stp / readme.txt < prev    next >
Text File  |  1994-12-09  |  35KB  |  864 lines

  1. This program is a very simple tool used to predict when satellites are
  2. visible to a certain location.  It is based on PLAN13 by James Miller
  3. (G3RUH) and is provided as is.  
  4.  
  5. It is written in C (my first attempt) and is not optimized for 
  6. anything.  I am sure there are better ways to do some of the
  7. things in here but this is pretty bullet proof and does what I
  8. want.
  9.  
  10. Currently I am using Borland Turbo C++ 3.0 on my PC to compile it
  11. and the GNU gcc-2.4.5 compiler on a SUN workstation.
  12.  
  13. There are a minimum set of data files required for STP to run.
  14.  
  15. 1)  myqth.dat   ASCII file with the coordinates of the station
  16.  
  17. format:
  18.          Station name (any string)
  19.          Latitude (degrees)
  20.          Longitude (degrees. Negative west of Greenwich)
  21.          Altitude (meters)
  22.  
  23. table of minimum look angles (input as a function of azimuth)
  24.  
  25. EXAMPLE: (neighbors house in the way between 190-194 degrees azimuth)
  26.  
  27. azimuth  minimum angle
  28. 0        2
  29. 45       5
  30. 90       7
  31. 135      3
  32. 180      0
  33. 190      15
  34. 191      18
  35. 192      35
  36. 193      12
  37. 194      6
  38. 225      6
  39. 270      8
  40. 315      5
  41. 360      2
  42.  
  43. NOTE #1:   If you only input 1 (one) line of values (azimuth and minimum angle)
  44.            the code will use this for all azimuths.
  45.  
  46. NOTE #2:   If you have input a table and want to turn it off temporarily,
  47.            just change the first minimum angle to be a value less
  48.            than zero (e.g. -0.10)
  49.  
  50. NOTE #3:   Currently put azimuth values in from 0 to 360.  Eventually
  51.            it will work with plus/minus values.
  52.  
  53. Code linearly interpolates between values.
  54.  
  55. Maximum of 360 input values
  56.  
  57.  
  58. STP will ask for all the data to write to this file the first time it is run
  59. or you can use any text editor to create it.
  60.  
  61. 2)  nasa.dat or kepler.dat   ASCII file with satellite elements.
  62.  
  63. format:
  64.  
  65.         nasa.dat  Standard NASA 2 Line orbital element file
  66.         kepler.dat Orbital info in text format
  67.  
  68.         NOTE:  Currently only 50 (DOS) and 300 (UNIX) satellites and can be 
  69.                loaded at any one time.
  70.  
  71.         NOTE:  STP currently looks for nasa.dat first.  If it is found then
  72.                the orbital info is taken from it.  If you only want to use
  73.                the kepler type of format only have kepler.dat in the current
  74.                directory.
  75.  
  76. 3)  stp.ini Control flags and information used to compute signal strengths.  
  77.  
  78. format:
  79.  
  80. 15.0    FindStep (minutes) initial step size in finding aos/los
  81. 1.0     FindAngleError (degrees) if within this angle quit
  82. 0.1     FindStepMinimum (minutes)  minimum step size
  83. 0       plot flag  0-none  1-yes
  84. 0       0-360 (0)  1 -180 to 180
  85. 1       ground trace 0 - write altitude to plot file   1 write 0.0
  86. 145.9 2400.0    Frequency Mode B   Mode S (MHz)
  87. 2300.0 5000.0   Receiver Bandwidth Mode B   Mode S (Hz)
  88. 17.0   24.0     Receiver Antenna Gain Mode B Mode S (dBi)
  89. 60.0   100.0    Receiver Noise Temperature (Deg Kelvin)
  90. 30.0            Average number of users (adjusts downlink power)
  91.  
  92. FindStep is an initial step size used in finding AOS/LOS.  If you have a
  93. fast computer (>30Mhz 486) or you have alot of patience you can decrease 
  94. this value to get slightly better answers.
  95.  
  96. FindAngleError and FindStepMinimum determine the "accuracy" to which the
  97. AOS/LOS times are determined.
  98.  
  99. plot flag is used to turn on/off the output of a set of data files that
  100. can be plotted using a user supplied routine.
  101.  
  102. 360 +-180 flag determines how azimuth values are written out.
  103.  
  104. ground trace flag is used in conjunction with the plot flag to determine 
  105. if the true altitude of the satellite is included in the plot file or
  106. if a zero is written.
  107.  
  108. The next set of lines are used to define the parameters for estimating
  109. the downlink signal strength.
  110.  
  111. Optional Data files:
  112.  
  113. 1)  mode.dat  ASCII file with operating modes of satellites.  If no mode.dat
  114.               file is found or a satellite in nasa/kepler.dat is not defined
  115.               the mode defaults to "???".
  116.  
  117. format:
  118.  
  119.         satellite:  satname1
  120.         beacon frequency (Mhz)  blon blat
  121.         schedule
  122.         schedule
  123.         schedule
  124.         satellite:  satname2
  125.         beacon frequency (Mhz)  blon blat
  126.         schedule
  127.  
  128.         etc... as few or as many satellites as you want
  129.  
  130.         The schedule is entered in terms of Mean Anomaly.  Mean
  131.         Anomaly describes the position of a satellite in its orbit.
  132.         In tracking programs Mean Anomaly is an angle that goes between
  133.         0 and 360 degrees.  For scheduling purposes it is useful to
  134.         specify MA in units of 256 of a circle.
  135.  
  136.         Perigee (lowest point on orbit) is at MA 0 degrees and 0/256.
  137.         Apogee (highest point) is at MA 180 degrees and 128/256.
  138.  
  139.         For example ao-13 has the following schedule (March 9,1994)
  140.  
  141.         From MA   0 to MA  30 Mode B omni antennas
  142.         From MA  30 to MA  90 Mode B high gain antennas
  143.         From MA  90 to MA 120 Mode BS high gain antennas
  144.         From MA 120 to MA 145 Mode S high gain antennas
  145.         From MA 145 to MA 150 S beacon only
  146.         From MA 150 to MA 180 Mode BS high gain antennas
  147.         from MA 180 to MA 230 Mode B high gain antennas
  148.         From MA 230 to MA 256 Mode B omni antennas
  149.  
  150.  
  151.         This schedule would be entered as;
  152.  
  153.         000030Bom
  154.         030090B..
  155.         090120BS.
  156.         120145S..
  157.         145150Sbc
  158.         150180BS.
  159.         180230B..
  160.         230256Bom
  161.  
  162.         Simplier schedules can also be entered.  For example for AO-10
  163.  
  164.         000256B..
  165.  
  166.         STP uses the mode names of Bom or BS. or S.. to perform some simple
  167.         received signal calculations and to modify the squint calculation
  168.         between the omnidirectional and high gain antennas.
  169.  
  170.         The beacon frequency is used to compute the doppler shift.
  171.  
  172.         Blat and Blon refer to the pointing angles the antennas on the
  173.         satellite make with the earth.  For example if Blon=180 and Blat=0
  174.         then when the satellite is at apogee the antennas are pointing
  175.         directly at the surface of the earth.  These values are only
  176.         important for high altitude satellites like AO-13, AO-10 or ARSENE 
  177.         (which is dead as of this writing (October 31,1994)).  These angles are
  178.         used to compute the squint angle that the antennas make with
  179.         your QTH.  At high squint angles (30-50 degrees) the signals get
  180.         weak and due to the spin of the satellite the signals are modulated.
  181.  
  182.         See the included mode.dat file as an example.
  183.  
  184. 2)  revcor.dat  ASCII file containing information relating to the correct
  185.     revolution data.
  186.  
  187.         The elements that are normally used have a relative revolution number
  188.         that changes at the beginning of each year.  Sometimes it is
  189.         valuable to know what the correct revolution number is.  This file
  190.         allows the user to include a factor that corrects the data in the
  191.         element file.
  192.  
  193. format:
  194.         satellite name
  195.         correction factor
  196.  
  197. 3)  qth.dat  ASCII file containing information relating to mutual visibility
  198.     calculations.
  199.  
  200.         Sometimes you want to know when a mutual window will exist 
  201.         between your location and some other location (e.g. chasing DX or
  202.         working a friend on vacation).  The file qth.dat contains
  203.         the latitude,longitude, altitude and name for these other locations.
  204.         To select a location or locations the user edits the file and
  205.         places the following command words around the cities of interest.
  206.  
  207.         starthere
  208.           city1
  209.           city2
  210.           city3
  211.         stophere
  212.  
  213.         Every city between starthere and stophere will be include in the
  214.         calculation of mutual visibility.  Currently the limit is 90 cities
  215.         at any one time.
  216.  
  217. Lack of Features:
  218.  
  219. This code will NOT drive any rotors as of yet.   It also does not have any 
  220. fancy graphics as of yet. I work on the code mainly as a learning experience 
  221. and as a practical means to operating the satellites without a computer 
  222. controlled rotor system so there is no fixed set of releases or future plans.
  223.  
  224.  
  225. NOTES on compiling:
  226.  
  227. If you have obtained the source code for STP then you will need to make some
  228. minor modifications.
  229.  
  230. If you are operating on a UNIX based platform then insure that the following
  231. statement exists in stp.c
  232.  
  233. #define UNIX
  234.  
  235. also make sure that the path statements in stp.unx agree with the location 
  236. of the datafiles.
  237.  
  238. On a DOS platform:
  239.  
  240. #define MSDOS
  241.  
  242. and set the paths in stp.dos.  NOTE that 2 (two) backslashes are required
  243. in the pathname.  C uses \ as indication of a special character and if you 
  244. want to use a \ then you must use two \\ (first slash says use next item as
  245. a character and not a special character).
  246.  
  247. With Borland Turbo C++ 3.0 I use to following command (on a 486 with 8Mb);
  248.  
  249. tcc -O1 -O2 -ml stp
  250.  
  251.  
  252. Makefile for GNU C
  253.  
  254. # Makefile
  255. CFLAGS =
  256.  
  257. PROGRAM=    stp
  258. HEADERS=    stp.unx
  259. SOURCES=    stp.c bioskey.c
  260. OBJECTS=    stp.o bioskey.o
  261. MAKEFILE=    Makefile
  262.  
  263. LIBS=        -lm
  264.  
  265. CC=        gcc
  266.  
  267. all:        $(PROGRAM)
  268.  
  269. $(PROGRAM):    $(OBJECTS)
  270.     $(CC) $(CFLAGS) -o $(PROGRAM) $(OBJECTS) $(LIBS)
  271.  
  272.  
  273.  
  274. Useage:
  275.  
  276. In the following discussion <cr> means press the return key.
  277.  
  278. STP is run from the command line.  if you just type  STP <cr> you will get a 
  279. listing of the currently available commands and some acknowledgements.
  280.  
  281. NOTE: the options are case sensitive (e.g. r and R are different options).
  282.  
  283.   a....AOS/LOS times (relative time) 
  284.   A....AOS/LOS times (absolute time) 
  285.   c....Sun/Moon real time display
  286.   C....Perform Check Sum calculations on 2-line nasa file
  287.            (can put filename on command line... STP C nasa.dat)
  288.   d....Dump information about satellites (beacon freq, alat,alon, # of modes)
  289.   e....View/Edit orbital parameters
  290.   h....Simple suggestions
  291.   m....Mutual visibility calculation
  292.   M....Real Time Mutual visibility.  Use the following to add observers
  293.          g-add based on grid locator
  294.          l-add based on lat,lon,alt
  295.          o-add based on names in qth.dat
  296.   p....Prediction for a single satellite
  297.   r....Real-time table of currently visible satellites, additional parameter
  298.            after r is update rate in seconds (default is 1 second)
  299.   R....Real-time table of all satellites, additional parameter  after R is
  300.            update rate in seconds (default is 1 second)
  301.   s....Same as option R but uses a selected set of satellites
  302.   S....Selects satellites for option s
  303.  
  304. The first time you run STP it will ask you for information about your qth,
  305. unless you have created myqth.dat prior to execution.  After you finish 
  306. inputting the info the above table will appear. 
  307.  
  308. After this first time any time you enter STP <cr> the above table will print
  309. on the screen.
  310.  
  311. OPTION a:
  312.  
  313. This option loops over all satellites in the data file and determines the 
  314. RELATIVE time to acquisition of the satellite (elevation > 0.0) and loss of
  315. the satellite.  If the satellite rise time is greater than 2 days in the 
  316. future that a message is printed to that affect.  
  317.  
  318. The format of the time is days:hours:minutes:seconds
  319.  
  320.  
  321. You will note that some satellites show no AOS/LOS times.  These satellites are 
  322. judged to be in a geostationary orbit by STP and are either constantly in view 
  323. or out of view. 
  324.  
  325. If the satellite is currently in view then Dt AOS is shown as 00:00:00.
  326.  
  327. The following is an EXAMPLE;
  328.  
  329.         Sat       AOS            LOS
  330.        AO13sm 00:07:01:44    00:08:16:07
  331.       OSCAR10 00:03:18:07    00:10:40:18
  332.        UOSAT2 00:02:21:28    00:00:09:39
  333.           MIR 00:00:56:19    00:00:10:25
  334.      RS-10/11 00:00:46:08    00:00:12:13
  335.         AO-13 00:07:01:01    00:08:16:02
  336.         UO-14 00:06:52:44    00:00:08:39
  337.         UO-15 00:06:52:50    00:00:09:20
  338.         DO-17 00:06:42:48    00:00:04:54
  339.         WO-18 00:07:45:31    00:00:13:11
  340.         LO-19 00:07:04:03    00:00:09:04
  341.         FO-20 00:00:21:47    00:00:40:48
  342.         AO-21 00:08:35:43    00:00:11:31
  343.      RS-12/13 00:00:40:01    00:00:16:03
  344.         UO-22 00:06:54:24    00:00:12:56
  345.         KO-23 00:06:17:54    00:00:18:12
  346.        ARSENE 01:03:02:55    00:18:43:03
  347.         AO-27 00:07:08:16    00:00:13:29
  348.       ITAMSAT 00:06:02:20    00:00:05:18
  349.         KO-25 00:06:01:06    00:00:08:31
  350.      1994067B Rise/Set Time > 2 Days from now!!
  351.      1994067C Rise/Set Time > 2 Days from now!!
  352.  
  353. OPTION A:
  354. Same as above except shows actual times instead of RELATIVE.
  355.  
  356. EXAMPLE:
  357.         Sat          Day    AOS               Day     LOS
  358.        AO13sm      Tuesday 02:41:51         Tuesday 10:57:53
  359.       OSCAR10       Monday 22:58:07         Tuesday 09:38:31
  360.        UOSAT2       Monday 22:01:32          Monday 22:11:12
  361.           MIR       Monday 20:36:20          Monday 20:46:44
  362.      RS-10/11       Monday 20:26:12          Monday 20:38:25
  363.         AO-13      Tuesday 02:41:02         Tuesday 10:57:05
  364.         UO-14      Tuesday 02:32:47         Tuesday 02:41:27
  365.         UO-15      Tuesday 02:32:54         Tuesday 02:42:15
  366.         DO-17      Tuesday 02:22:52         Tuesday 02:27:46
  367.         WO-18      Tuesday 03:25:36         Tuesday 03:38:42
  368.         LO-19      Tuesday 02:44:07         Tuesday 02:53:11
  369.         FO-20       Monday 20:01:50          Monday 20:38:21
  370.         AO-21      Tuesday 04:15:46         Tuesday 04:27:17
  371.      RS-12/13       Monday 20:20:05          Monday 20:36:08
  372.         UO-22      Tuesday 02:34:27         Tuesday 02:47:18
  373.         KO-23      Tuesday 01:57:58         Tuesday 02:16:05
  374.        ARSENE      Tuesday 22:42:53       Wednesday 17:26:02
  375.         AO-27      Tuesday 02:48:20         Tuesday 03:01:50
  376.       ITAMSAT      Tuesday 01:42:21         Tuesday 01:47:40
  377.         KO-25      Tuesday 01:41:06         Tuesday 01:49:38
  378.  
  379. OPTION c:
  380. Provides a realtime display of the sun/moon azimuth,elevation and range.
  381. Additional parameter on command line is update rate in seconds.
  382.  
  383. Screen capture of option c;
  384.  
  385.  19:42:40 Sun :  218.69   31.83   151535606.370   
  386.           Moon:  256.33   12.62      366631.759
  387.  
  388.  
  389. format is Azimuth (degrees)   Elevation (degrees)   Range (Km)
  390.  
  391. OPTION C:
  392. Perform checksum calculation on nasa 2 line file.
  393.  
  394. useage:
  395.  
  396. stp C <filename>
  397.  
  398. Outputs corrected file to newnasa.dat.
  399.  
  400. If the user fails to enter a name on the command line STP will
  401. prompt for one.
  402.  
  403. OPTION d:
  404.  
  405. This option dumps out some basic information about the satellites as entered
  406. through nasa.dat or kepler.dat and mode.dat.  
  407.  
  408. EXAMPLE:
  409.  
  410.  #    Beacon  Alon  Alat   Apogee    Perigee   Period   Ecc     Age
  411.         Mhz   deg   deg      Km         Km       min            days
  412.   8  145.8120  230    0   38016.1     790.6     719.2  0.72194  82.81 AO13sm 
  413.   1  145.8120  209  -17   35451.1    3994.6     732.6  0.60259  14.50 OSCAR10 
  414.   1  435.0250    0    0     671.1     655.7     102.7  0.00109   6.44 UOSAT2 
  415.   1  145.5500    0    0     396.2     393.2      96.8  0.00022   5.19 MIR 
  416.   1   29.3570    0    0    1000.5     981.9     109.9  0.00126   7.19 RS-10/11 
  417.   8  145.8120  230    0   38072.2     733.2     719.2  0.72416   4.12 AO-13 
  418.   1  435.0700    0    0     800.0     784.4     105.5  0.00109   6.75 UO-14 
  419.   1  435.1200    0    0     801.6     787.3     105.5  0.00100   6.25 UO-15 
  420.   1  145.8250    0    0     799.7     783.4     105.5  0.00114   6.25 DO-17 
  421.   1  437.0751    0    0     800.1     783.2     105.5  0.00118   6.25 WO-18 
  422.   1  437.1530    0    0     800.1     782.5     105.5  0.00123   7.31 LO-19 
  423.   1  435.7970    0    0    1745.7     911.3     117.5  0.05413   6.69 FO-20 
  424.   1  145.9870    0    0    1010.5     956.1     109.7  0.00370   4.62 AO-21 
  425.   1   29.4080    0    0    1007.7     962.5     109.8  0.00307   7.06 RS-12/13 
  426.   1  435.1200    0    0     773.5     763.7     105.0  0.00069   6.75 UO-22 
  427.   1  437.1750    0    0    1328.1    1304.5     117.3  0.00153   5.75 KO-23 
  428.   1 2447.0001  120    0   36748.1   17303.1    1060.7  0.29106   8.25 ARSENE 
  429.   1  436.8000    0    0     805.6     793.7     105.7  0.00083   5.75 AO-27 
  430.   0  145.0000    0    0     805.3     791.0     105.6  0.00100   5.81 ITAMSAT 
  431.   1  436.5000    0    0     805.5     790.9     105.6  0.00102   7.25 KO-25 
  432.  
  433. If any mode data is set in modes.dat then # is how many modes it found.  
  434. Beacon frequency in Mhz,  Alon/Alat are satellite pointing angles (sometimes 
  435. called Blon and Blat), Apogee is apogee altitude in Km, Perigee is perigee 
  436. altitude in Km, Period is orbital period in minutes, Ecc is orbit eccentricity 
  437. (0 is perfect circular),  Age is the age of the element set and finally the 
  438. satellite name.  This table is just a quick way to check the input data.
  439.  
  440. OPTION e:
  441. Allows the user to edit/view the orbital parmeters for each satellite
  442. loaded.  Edits which ever type of file STP is started with (nasa
  443. 2 line or kepler format).  
  444.  
  445. For the kepler format a new file named kepler.tmp is created.
  446. For the nasa 2 line format nasa.tmp is created.
  447.  
  448. To utilize the modified database you must rename kepler.tmp to kepler.dat or
  449. nasa.tmp to nasa.dat (see discussion of nasa/kepler.dat).
  450.  
  451. OPTION m:
  452. This option allows you to determine the mutual visibility between your qth 
  453. and some other location.  The included file qth.dat contains some of the more 
  454. popular qth locations as well as some major cities.   To use this option you 
  455. must edit the datafile and place the keywords starthere and stophere around the 
  456. city or cites that you are interested in.  You can also just create a datafile
  457. with then information you want in it.  Once you have done that then you issue 
  458. the following;
  459.  
  460. 1) STP m satellite name <cr> (if you know which satellite you want)
  461.  
  462.     or
  463.  
  464. 2) STP then asks you for additional informtion
  465.  
  466. Enter Start Day (month day year):
  467. Number of Days for Prediction:
  468. Step Size (minutes....input negative value for seconds): 
  469. FileName to write output to (cr for screen): 
  470.  
  471. Suggestions/Formats on inputs:
  472.  
  473. Start Day (format)
  474.    Months 1-12  Days 1-31 Year 199?-???
  475.  
  476. Number of Days
  477.    1 or more.  You can input as big a value as you want but remember that
  478.    for LEO type satellites (RS-10/11, AO-21,...) the elements change due
  479.    to drag and predictions longer than a month will start to show errors.
  480.  
  481. Step Size (minutes....input negative value for seconds): 
  482.    5 is good for AO-13,AO-10 and other high altitude/Molynia type
  483.    satellites.  Use 1 for RS-10/11, AO-21, or other LEO satellites.
  484.    If the step size is input as negative then STP assumes the time
  485.    is in seconds and adjusts the output accordingly.
  486.  
  487. FileName
  488.    If you press <cr> at FileName prompt then the run is output to the screen,
  489.    If you enter a filename the output is written to the filename specified.
  490.  
  491. The following example is looking for mutual visibility between KD4QIO and 
  492. Stanley, Falkland Islands and Peter I using AO-13.  The left half of the table 
  493. is the local information and the right half is for the other location(s).  
  494. The information is provided as a function of UTC.
  495.  
  496. Az      azimuth of satellite (degrees), home QTH
  497. EL      elevation of satellite (degrees), home QTH
  498. Range   range from home QTH to satellite (Km)
  499. Sqnt    "squint" angle (degrees) as viewed from home QTH
  500.  
  501. Az      azimuth of satellite (degrees), mutual site
  502. EL      elevation of satellite (degrees), mutual site
  503. Range   range from mutal site to satellite (Km)
  504. Sqnt    "squint" angle (degrees)  as viewed from mutual site
  505.  
  506. Mde     mode the satellite is operating in
  507.  
  508. The last column is the site name (only usefull if more than one site selected)
  509.  
  510.     ----------------------------------------------------------------------
  511.     Prediction Date : Monday October 31 1994    Amsat Day:   6147
  512.     Prediction For  :  2 Sites
  513.     Performed on    : October 31 1994 13:54:09
  514.     Satellite       : AO-13 (Set:   988, Rev #:  5966, Age:   4.1 Days)
  515.     Illumination    : 86.4%  SAZ/SEL 350.5/-1.3 AP/RAAN 353.6/222.8 
  516.     Alon/Alat       : 230.0/ 0.0  Frequency: 145.8120 MHz 
  517.     ----------------------------------------------------------------------
  518.                 Local            |             Dx
  519.      UTC   Az   El   Range  Sqnt |  Az   El   Range  Sqnt   MA   Mde
  520.     ----------------------------------------------------------------------
  521.     0855  249   31   40803   51  | 316    0   43906   60  122.7  OFF Peter I 
  522.     0900  250   30   40933   51  | 315    0   43908   59  124.6  OFF Peter I 
  523.     .
  524.     .
  525.     1040  253    7   40969   39  | 294    5   41239   47  161.9  B.. Peter I 
  526.     .
  527.     .
  528.     1105  254    2   40159   35  | 288    6   39706   44  171.2  B.. Peter I 
  529.     1110  254    0   39953   35  | 287    6   39353   43  173.1  B.. Peter I 
  530.     ----------------------------------------------------------------------
  531.     Prediction Date : Tuesday November 01 1994    Amsat Day:   6148
  532.     Prediction For  :  2 Sites
  533.     Performed on    : October 31 1994 13:54:09
  534.     Satellite       : AO-13 (Set:   988, Rev #:  5968, Age:   4.1 Days)
  535.     Illumination    : 86.2%  SAZ/SEL 350.7/-2.3 AP/RAAN 353.7/222.7 
  536.     Alon/Alat       : 230.0/ 0.0  Frequency: 145.8120 MHz 
  537.     ----------------------------------------------------------------------
  538.                 Local            |             Dx
  539.      UTC   Az   El   Range  Sqnt |  Az   El   Range  Sqnt   MA   Mde
  540.     ----------------------------------------------------------------------
  541.     0540  216   71   32866   68  | 324    0   38374   78   74.9  OFF Stanley 
  542.     0545  217   70   33294   67  | 323    1   38729   77   76.8  OFF Stanley 
  543.     .
  544.     .
  545.     0700  229   54   38123   56  | 308    4   42534   66  104.8  OFF Stanley 
  546.     0705  230   53   38347   56  | 307    4   42690   65  106.6  OFF Stanley 
  547.     0705  230   53   38347   56  | 340    0   43077   65  106.6  OFF Peter I 
  548.     0710  230   51   38559   55  | 305    4   42834   65  108.5  OFF Stanley 
  549.     0710  230   51   38559   55  | 339    1   43175   64  108.5  OFF Peter I 
  550.     .
  551.     .
  552.     1035  244    5   36958   30  | 296   13   36131   39  184.9  B.. Peter I 
  553.     1040  244    4   36634   29  | 295   13   35649   38  186.8  B.. Peter I 
  554.     .
  555.     .
  556.     1050  243    2   35940   27  | 293   14   34631   36  190.5  BS. Peter I 
  557.     1055  243    0   35566   27  | 292   14   34093   36  192.4  BS. Peter I 
  558.  
  559. OPTION M:
  560. Realtime display of mutual visibility.
  561.  
  562. Useage:
  563.  
  564. stp M <update rate> <satellite>
  565.  
  566. Once this mode is operational additional sites can be added by pressing;
  567.  
  568.   g-add based on grid locator (e.g. fn13ed)
  569.   l-add based on lat,lon,alt  (-68.783 -90.583 0)
  570.   o-add based on names in qth.dat (beijing or om89ew or china) case independent
  571.  
  572. To stop this mode press q.
  573.  
  574. OPTION p:
  575. This option generates a table that allows the user to predict when
  576. the satellite will be in view of the local QTH.
  577.  
  578. You can start this option in two ways;
  579.  
  580. 1) STP p satellite name <cr> (if you know which satellite you want)
  581.  
  582.    or
  583.  
  584. 2) STP p <cr> (and STP will show you a list of the available satellites)
  585.  
  586. After selecting the satellite STP will want the following information:
  587.  
  588. Enter Start Day (month day year) (<cr> for current date):
  589. Number of Days for Prediction:
  590. Step Size (minutes....input negative value for seconds): 
  591. FileName to write output to (cr for screen): 
  592.  
  593. Suggestions/Formats on inputs:
  594.  
  595. Start Day format
  596.    Months 1-12  Days 1-31 Year 199?-???
  597.  
  598. Number of Days
  599.    1 or more.  You can input as big a value as you want but remember that
  600.    for LEO type satellites (RS-10/11, AO-21,...) the elements change due
  601.    to drag and predictions longer than a month will start to show errors.
  602.  
  603. Step Size (minutes....input negative value for seconds): 
  604.    5 is good for AO-13, AO-10 and other high altitude/Molynia type
  605.    satellites.  Use 1 for RS-10/11, AO-21, or other LEO satellites.
  606.    If the step size is input as negative then STP assumes the time
  607.    is in seconds and adjusts the output accordingly.
  608.  
  609. FileName
  610.    If you press <cr> at FileName prompt then the run is output to the screen,
  611.    If you enter a filename the output is written to the filename specified.
  612.  
  613. EXAMPLE (prediction for ao-13 )
  614.  
  615.  
  616. The header block provides the UTC date for the prediction, the current
  617. revolution (REV) counter and the AMSAT day.  Also provided are the satellite
  618. chosen, the sun illumination and the azimuth and elevation the sun makes with 
  619. the satellites (SAZ/SEL) solar panels, the starting Argument of Perigee and 
  620. the R.A.A.N (AP/RAAN).  The current pointing angle information (ALAT/ALON) is 
  621. shown along with the frequency used to compute the doppler shift.
  622.  
  623. The format of the table is:
  624.  
  625. UTC       UTC time for prediciton
  626. Az        Azimuth of satellite (degrees)
  627. El        Elevation of satellite (degrees)
  628. Range     Range from QTH to satellite (Km)
  629. Sqnt      Squint angle as viewed by QTH (degrees)
  630.           (for ao-13 corrections are made based on if the high gain on omni
  631.            directional antennas are in use)
  632. Dopplr    Doppler shift (Hz)
  633.           (for ao-13 the beacon frequency will shift for Mode S)
  634. MA        Mean Anomaly (0-256)
  635. Mode      Operation Mode 
  636.  
  637. Sun       contains either a -,+,vis or ECL which indicate the following:
  638.  
  639.           +    shadow side of earth (high probability of being sunlit)
  640.           -    sunny side (definitely sunlit)
  641.           vis  possibily in view of observer (sun below 10 degrees elevation)
  642.           ECL  eclipsed by earth (definitely not sunlit)
  643.  
  644. The data in the last one or two columns is only computed if AO-13 or AO-10 
  645. is the chosen satellite.  STP performs a relative signal calculation 
  646. based on the orientation of the satellite, the range from the satellite to the 
  647. observer and the gain of the satellite transmitter.  These values are used only 
  648. to provide an indication of the received signal strength (your milage may vary).
  649.  
  650. If AO-13 is in mode BS then calculations for both Mode B and Mode S are shown.
  651. If only Mode B or Mode S then only calculations for that mode are shown.
  652. When AO-13 is operating either the Mode S beacon (Sbc) or Mode S only (S..)
  653. the doppler shift is computed assuming a beacon frequency of 2400.375 Mhz.
  654. For all other modes for AO-13 the beacon frequency is 145.812 Mhz.  Changing
  655. the values in mode.dat WILL NOT alter these calculations for AO-13 (must modify
  656. the source code).
  657.  
  658. Anytime the revolution number or the date changes or a gap of more than 
  659. StepSize appears in the table a new header block is written out.
  660.  
  661.     ----------------------------------------------------------------------
  662.     Prediction Date : Monday October 31 1994    Amsat Day:   6147
  663.     Prediction For  : kd4qio at home
  664.     Performed on    : October 31 1994 14:02:57
  665.     Satellite       : AO-13 (Set:   988, Rev #:  5966, Age:   4.1 Days)
  666.     Illumination    : 86.4%  SAZ/SEL 350.5/-1.1 AP/RAAN 353.6/222.9 
  667.     Alon/Alat       : 230.0/ 0.0  Frequency: 145.8120 MHz 
  668.     ----------------------------------------------------------------------
  669.      UTC   Az   El   Range  Sqnt    Dopplr    MA  Mode  Sun    PRSL
  670.     ----------------------------------------------------------------------
  671.     0355  319    9    9681   79     -470    10.9  Bom  vis     26.65 
  672.     0400  320   20   10082   68     -811    12.8  Bom  vis     26.60 
  673.     .
  674.     .
  675.     0445  309   67   17428   15    -1409    29.5  Bom  vis     22.25 
  676.     0450  305   68   18290  102    -1385    31.4  OFF  vis 
  677.     0455  301   70   19136   99    -1358    33.3  OFF  vis 
  678.     .
  679.     .
  680.     0705  246   55   34917   66     -657    81.7  OFF  vis 
  681.     0710  246   54   35316   65     -635    83.6  OFF  ECL 
  682.     0715  246   53   35700   64     -614    85.5  OFF  ECL 
  683.     .
  684.     .
  685.     0830  248   36   39977   54     -316   113.4  OFF  ECL 
  686.     0835  248   35   40166   54     -297   115.3  OFF  vis 
  687.     .
  688.     .
  689.     1005  252   15   41531   43      +56   148.8  OFF  vis 
  690.     1010  252   14   41488   42      +76   150.7  B..  vis     24.81 
  691.     .
  692.     .
  693.     1110  254    0   39953   35     +346   173.1  B..  vis     25.82 
  694.     ----------------------------------------------------------------------
  695.     Prediction Date : Tuesday November 01 1994    Amsat Day:   6148
  696.     Prediction For  : kd4qio at home
  697.     Performed on    : October 31 1994 14:02:57
  698.     Satellite       : AO-13 (Set:   988, Rev #:  5968, Age:   4.1 Days)
  699.     Illumination    : 86.2%  SAZ/SEL 350.7/-2.1 AP/RAAN 353.7/222.7 
  700.     Alon/Alat       : 230.0/ 0.0  Frequency: 145.8120 MHz 
  701.     ----------------------------------------------------------------------
  702.      UTC   Az   El   Range  Sqnt    Dopplr    MA  Mode  Sun    PRSL
  703.     ----------------------------------------------------------------------
  704.     0245  317   11    8586   80     -305     9.7  Bom  vis     27.65 
  705.     .  
  706.     .
  707.     1030  244    6   37264   30     +483   183.1  B..  vis     26.75 
  708.     1035  244    5   36958   30     +509   184.9  B..  vis     26.87 
  709.     1040  244    4   36634   29     +536   186.8  B..  vis     26.99 
  710.     1045  244    3   36295   28     +564   188.7  B..  vis     27.12 
  711.     1050  243    2   35940   27     +591   190.5  BS.  vis     27.25     27.70 
  712.     1055  243    0   35566   27     +620   192.4  BS.  vis     27.38     28.14 
  713.  
  714. OPTION r:
  715. This option performs a real-time (limited by you cpu speed) prediction of 
  716. satellites currently visible from the home QTH.  Only satellites that are
  717. in view (Elevation > 0.0) are shown.
  718.  
  719. The following is a screen capture of STP r:
  720.  
  721.  LOC     Sunday   November 06 1994 14:47:42
  722.  GMT     Sunday   November 06 1994 20:47:42
  723.   Az    El    Range Squnt  Doppler  MA    Mode Sun
  724.    49    9 v  19371    2    -1867   25.6   Bom  +         AO13sm
  725.   122   35 v  28890   60     -736   60.3   B..  -        OSCAR10
  726.    49    8 v  19558    3    -1860   25.7   Bom  +          AO-13
  727.   248   19 ^  25098  159   +10406  226.7   xxx  -         ARSENE
  728.  
  729. If no mode data has been set then ??? is displayed.
  730.  
  731. An additional parameter can be specified on the command line at execution
  732. time.  This parameter is the update rate in seconds.  With no parameter
  733. specified the default is 1 second.  To specify a rate of 5 seconds you 
  734. would enter;
  735.  
  736. STP r 5
  737.  
  738. If you want to see relatively how fast your computer is enter;
  739.  
  740. STP r 0
  741.  
  742. and watch the seconds block of the LOC entry.  If your screen is flashing
  743. several times prior to the seconds block updating then you are able to 
  744. update the information several times a second.  If your screen does not
  745. flash between updates then the time difference shown in the LOC block
  746. is the slowest rate that you should try to run this option at.  For
  747. example on an 8086 the seconds block updated at about once every 7 
  748. seconds.  On this machine the following would be used;
  749.  
  750. STP r 10
  751.  
  752. OPTION R:
  753. Identical to OPTION r except that all the satellites are shown.  The format
  754. of the display is changed to indicate if the satellite is in view or not
  755. and the RELATIVE time to AOS/LOS.
  756.  
  757. The following is a screen capture of STP R:
  758.  
  759.  LOC     Monday    October 31 1994 14:06:48
  760.  GMT     Monday    October 31 1994 20:06:48
  761.   Az    El    Range Squnt  Doppler  MA    Mode Sun Status AOS--LOS
  762.    47  -40 v  48039   47     -106  117.0   OFF  +    aos  06:35:01       AO13sm
  763.    40  -27 ^  30562   26     +967  210.9   B..  +    aos  02:51:20      OSCAR10
  764.   134  -44 ^   9743   41    +5884   94.6   PKT  +    aos  01:54:45       UOSAT2
  765.   229  -64 ^  11893   24    +1476   63.1   PKT  -    aos  00:29:31          MIR
  766.   203  -39 ^   9437   42     +451  215.8   A..  -    aos  00:19:26     RS-10/11
  767.    47  -40 v  48113   47     -103  117.2   OFF  +    aos  06:34:17        AO-13
  768.     8  -17 ^   5706   58    +6827  216.3   FSK  +    aos  06:26:02        UO-14
  769.     9  -18 ^   5804   58    +6759  212.9   TLE  +    aos  06:26:02        UO-15
  770.   302   -3 v   3580   63     -414  247.6   PKT  -    aos  06:16:05        DO-17
  771.   203  -54 v  11307   31    -4876   72.6   PKT  -    aos  07:18:46        WO-18
  772.    34  -38 ^   9116   44    +6812  186.5   PSK ECL   aos  06:37:18        LO-19
  773.    16   24 ^   2509   49    +7522   65.5   JA.  -   -LOS- 00:17:55        FO-20
  774.   296   -2 ^   3892   60     +359   52.6   DIG  -    aos  08:08:54        AO-21
  775.   172  -31 ^   8224   48     +516  167.0   K..  -    aos  00:13:17     RS-12/13
  776.    28  -27 ^   7341   52    +6554  127.9   PKT ECL   aos  06:27:39        UO-22
  777.   132  -47 ^  11024   34     +491   42.8   FSK  +    aos  05:51:09        KO-23
  778.    14  -60 v  44545   20    -5573   80.1   S..  +    aos  26:36:02       ARSENE
  779.    54  -47 ^  10368   37    +5581  155.2   FM. ECL   aos  06:41:33        AO-27
  780.   175  -67 v  12621   20     -613   91.0   ---  -    aos  05:35:30      ITAMSAT
  781.   178  -66 v  12532   21    -1832  101.1   FSK  -    aos  05:34:21        KO-25
  782.  
  783.  
  784. The column after the elevation (El) has either a ^ to indicate the satellite
  785. is approaching or a v to indicate going away.
  786.  
  787. The column after Mode contains either a +,-,vis or ECL showing the sun 
  788. illumination on the satellite.
  789.  
  790. The next column will contain either aos or -LOS- indicating if the time in the
  791. AOS--LOS column is time to acquisition of signal (aos) or loss of signal (los).
  792.  
  793.  
  794. The next column is the RELATIVE time (hours:minutes:seconds) until
  795. AOS/LOS.
  796.  
  797.  
  798. OPTION s:
  799. Similar to OPTION R except that only a selected set of satellites
  800. are shown.
  801.  
  802. OPTION S:
  803. Used to select the satellites for OPTION s.  Creates a file called
  804. select.dat
  805.  
  806.  
  807. Plug:
  808.  
  809. I would suggest that you join AMSAT and buy one of their codes if you are
  810. interested in automating the tracking process (Instanttrack is sort of a
  811. standard).  There are other codes available (RealTrack, Sattrack, etc.)
  812. each of which do something a little different.
  813.  
  814. Other tools;
  815.  
  816. WISP.
  817. SatSked.
  818.  
  819.  
  820. Plea:
  821.  
  822. If you use the code and find problems, have suggestions for additions
  823. or know better/faster ways to perform the same job please let me know.
  824.  
  825.  
  826. Future efforts:
  827.  
  828. Break the code up to make it more managable.  
  829. Rewrite the rise/set algorithm using the work of Escobal (same algorithm
  830. used in most of the famous programs).
  831. Rotor Control.
  832. Graphics/Windows
  833.  
  834. Acknowlegdements:
  835.  
  836. I am very grateful to James Miller (G3RUH) for providing me a copy of his PLAN13
  837. paper and answering the stupid questions that I have come up with over time. 
  838.  
  839. I would also like to thank Mark Phillips (N2RPZ) for helping me debug this code
  840. and provide suggestions.
  841.  
  842.  
  843.  
  844. I would also like to thank some of my predicessors;
  845.  
  846. Robert W. Berger (N3EMO) the author of Orbit.  The methodology for reading 
  847. the nasa format database came from N3EMO's code.
  848.  
  849. Manfred Bester (DL5KR) the author of SatTrack.  The initial qth.dat file came 
  850. from the distribution tape of SatTrack.
  851.  
  852. Both of these authors have developed and provided very useful tools.
  853.  
  854.  
  855. Internet:            harper@huntsville.sparta.com or kd4qio@amsat.org
  856. Packet:              kd4qio@k4bft.#hsv.al.usa.na
  857. Work:                (205) 837-5282 x1216
  858.  
  859. Snail Mail:          Christie Harper
  860.                      P.O. Box 18786
  861.                      Huntsville, Al 35804
  862.  
  863. 73's and look forward to talking to you on the satellite.
  864.